﻿using System;
namespace Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg {
    
    
    public partial class DokumentTypeV4 : global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IDokumentTypeV4 {
        
        private string @__id;
        
        private System.Decimal? @__edokumendiId;
        
        private string @__digidocViit;
        
        private string @__failinimi;
        
        private System.Int32? @__liikEttevotjaportaal;
        
        private System.Int32? @__liikEnotar;
        
        public DokumentTypeV4() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public DokumentTypeV4(string @id, System.Decimal? @edokumendiId, string @digidocViit, string @failinimi, System.Int32? @liikEttevotjaportaal, System.Int32? @liikEnotar) {
            this.@__id = @id;
            this.@__edokumendiId = @edokumendiId;
            this.@__digidocViit = @digidocViit;
            this.@__failinimi = @failinimi;
            this.@__liikEttevotjaportaal = @liikEttevotjaportaal;
            this.@__liikEnotar = @liikEnotar;
        }
        
        /// <summary>
        /// Required parameters
        /// </summary>
        public DokumentTypeV4(string @id, string @failinimi) {
            this.@__id = @id;
            this.@__failinimi = @failinimi;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected DokumentTypeV4(IDokumentTypeV4 @dokumentTypeV4) {
            this.@__id = @dokumentTypeV4.Id;
            this.@__edokumendiId = @dokumentTypeV4.EdokumendiId;
            this.@__digidocViit = @dokumentTypeV4.DigidocViit;
            this.@__failinimi = @dokumentTypeV4.Failinimi;
            this.@__liikEttevotjaportaal = @dokumentTypeV4.LiikEttevotjaportaal;
            this.@__liikEnotar = @dokumentTypeV4.LiikEnotar;
        }
        
        public virtual string Id {
            get {
                return this.@__id;
            }
            set {
                this.@__id = value;
            }
        }
        
        public virtual System.Decimal? EdokumendiId {
            get {
                return this.@__edokumendiId;
            }
            set {
                this.@__edokumendiId = value;
            }
        }
        
        public virtual string DigidocViit {
            get {
                return this.@__digidocViit;
            }
            set {
                this.@__digidocViit = value;
            }
        }
        
        public virtual string Failinimi {
            get {
                return this.@__failinimi;
            }
            set {
                this.@__failinimi = value;
            }
        }
        
        public virtual System.Int32? LiikEttevotjaportaal {
            get {
                return this.@__liikEttevotjaportaal;
            }
            set {
                this.@__liikEttevotjaportaal = value;
            }
        }
        
        public virtual System.Int32? LiikEnotar {
            get {
                return this.@__liikEnotar;
            }
            set {
                this.@__liikEnotar = value;
            }
        }
    }
}
